Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Snippets] Moved infrastructure to Linear Intermediate Representation #16402

Conversation

a-sidorova
Copy link
Contributor

@a-sidorova a-sidorova commented Mar 20, 2023

Details:

  • Moved Snippets infrastructure to Linear IR

Ticket:

  • 99113

Validation:

  • Accuracy validation has been successfully passed. The results are attached to the ticket
  • Performance validation has been successfully passed. The results are attached to the ticket
  • The Snippets func tests are successfully passed on SPR (bf16 and quantized MatMul)

@github-actions github-actions bot added category: build OpenVINO cmake script / infra category: CPU OpenVINO CPU plugin category: IE Tests OpenVINO Test: plugins and common labels Mar 20, 2023
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch 2 times, most recently from c25c2e2 to 881d657 Compare March 24, 2023 13:00
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from 3604db5 to af406c8 Compare March 27, 2023 16:21
@github-actions github-actions bot removed the category: build OpenVINO cmake script / infra label Mar 28, 2023
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch 6 times, most recently from cd9bd24 to 61ef97a Compare April 4, 2023 08:08
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from c22b2f6 to 8f4cd19 Compare April 17, 2023 11:53
@github-actions github-actions bot added the category: GPU OpenVINO GPU plugin label Apr 17, 2023
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from 9e45f70 to d582f98 Compare April 19, 2023 08:39
@github-actions github-actions bot removed the category: GPU OpenVINO GPU plugin label Apr 19, 2023
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch 2 times, most recently from 2486ac4 to 20f85d9 Compare April 20, 2023 07:57
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch 2 times, most recently from db63053 to 5297ddb Compare May 11, 2023 14:28
@github-actions github-actions bot added category: build OpenVINO cmake script / infra category: dependency_changes Pull requests that update a dependency file category: Python API OpenVINO Python bindings and removed category: dependency_changes Pull requests that update a dependency file category: Python API OpenVINO Python bindings labels May 11, 2023
a-sidorova added 13 commits May 16, 2023 18:01
* [Snippets] Added support of Port Descriptor

* review

* Added Softmax support via common pipeline

* Added Brgemm marking via general pipeline

* TensorDescriptor -> ExpressionPort

* Refactored expression factory

* ExpressionPort - is interface

* refactoring

* fixed init loops

* fixed brgemm ops

* Moved PortDescriptor to lowered level

* Removed PortDesc getters and setters from ExpressionPort and Tensor

* Applied comments
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from ba99339 to f71b552 Compare May 16, 2023 14:02
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from a690418 to 14b8709 Compare May 17, 2023 11:13
src/common/snippets/src/op/subgraph.cpp Outdated Show resolved Hide resolved
src/plugins/intel_cpu/src/nodes/subgraph.cpp Outdated Show resolved Hide resolved
src/common/snippets/src/op/subgraph.cpp Outdated Show resolved Hide resolved
static LinearIR::container deep_copy_range(LinearIR::container::const_iterator begin, LinearIR::container::const_iterator end);

const container& get_ops() const {return m_lowered_ops; }
const io_container& get_IO_ops() const {return m_io_lowered_ops; }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it looks like we are mixing lowered_ops and expressions naming. Does it make sense to align everywhere?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, renamed the class fields. Thanks

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Methods are still named as {smt}_ops. :)
Ok to postpone fix to seaprate PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, yeah, I see. My eyes are used to this naming and I didn't notice that. Thank you. I will fix it in separate PR

src/plugins/intel_cpu/src/nodes/subgraph.cpp Show resolved Hide resolved
src/tests/functional/plugin/shared/src/snippets/matmul.cpp Outdated Show resolved Hide resolved
@a-sidorova a-sidorova requested a review from a team as a code owner May 19, 2023 08:04
@a-sidorova a-sidorova requested review from bstankix and removed request for a team May 19, 2023 08:04
@github-actions github-actions bot added the category: docs OpenVINO documentation label May 19, 2023
@a-sidorova a-sidorova force-pushed the feature/snippets/lin_ir/loop_fusion_insert branch from 0ac8608 to dbfe69a Compare May 19, 2023 09:33
@dmitry-gorokhov dmitry-gorokhov merged commit 9fafcab into openvinotoolkit:master May 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: build OpenVINO cmake script / infra category: CPU OpenVINO CPU plugin category: docs OpenVINO documentation category: IE Tests OpenVINO Test: plugins and common
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants